# -*- coding: utf-8 -*-
from flask_script import Manager
from flask_migrate import Migrate, MigrateCommand
from info import create_app, db

# 通过指定名称创建对应的app--create_app工厂方法
from info.models import User

app = create_app("development")
# 集成script功能
manager = Manager(app)
# 配置数据库迁移，关联app和db
Migrate(app, db)
# 将迁移指令增加到manager中
manager.add_command("db", MigrateCommand)


@manager.option("-n","-name", dest = "name")
@manager.option("-p","-password", dest = "password")
def createsuperuser(name, password):
    if not all([name, password]):
        print("参数错误")
    user = User()
    user.name = name
    user.password = password
    user.nick_name = name
    user.mobile = name
    user.is_admin = True
    try:
        db.session.add(user)
        db.session.commit()
    except Exception as error:
        db.session.rollback()
        print(error)

    print("管理员创建成功")

if __name__ == "__main__":
    manager.run()